/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

JDCLOUD IAS Services API
京东云联合登陆Api

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/

#import <Foundation/Foundation.h>
#import <JDCloudOCSDKIas/IasApiModel.h>


@implementation IasAppsRequest
-(id) initWithRegion:(NSString *)regionId
pin:(NSString*)pin
appName:(NSString*)appName
clientId:(NSString*)clientId
multiTenant:(NSNumber*)multiTenant
state:(NSString*)state
scope:(NSString*)scope
startTime:(NSNumber*)startTime
endTime:(NSNumber*)endTime
accountType:(NSString*)accountType
pageIndex:(NSNumber*)pageIndex
pageSize:(NSNumber*)pageSize
offset:(NSNumber*)offset { 
    self.regionId = regionId;
    self.pin = pin;
    self.appName = appName;
    self.clientId = clientId;
    self.multiTenant = multiTenant;
    self.state = state;
    self.scope = scope;
    self.startTime = startTime;
    self.endTime = endTime;
    self.accountType = accountType;
    self.pageIndex = pageIndex;
    self.pageSize = pageSize;
    self.offset = offset;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pin:(NSString*)pin
appName:(NSString*)appName
clientId:(NSString*)clientId
multiTenant:(NSNumber*)multiTenant
state:(NSString*)state
scope:(NSString*)scope
startTime:(NSNumber*)startTime
endTime:(NSNumber*)endTime
accountType:(NSString*)accountType
pageIndex:(NSNumber*)pageIndex
pageSize:(NSNumber*)pageSize
offset:(NSNumber*)offset { 
    self.regionId = regionId;
    self.version = version;
    self.pin = pin;
    self.appName = appName;
    self.clientId = clientId;
    self.multiTenant = multiTenant;
    self.state = state;
    self.scope = scope;
    self.startTime = startTime;
    self.endTime = endTime;
    self.accountType = accountType;
    self.pageIndex = pageIndex;
    self.pageSize = pageSize;
    self.offset = offset;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pin])
    {
        [result setValue:[self pin] forKey:@"pin"];
    }
    if([self appName])
    {
        [result setValue:[self appName] forKey:@"appName"];
    }
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    if([self multiTenant])
    {
        [result setValue:[self multiTenant] forKey:@"multiTenant"];
    }
    if([self state])
    {
        [result setValue:[self state] forKey:@"state"];
    }
    if([self scope])
    {
        [result setValue:[self scope] forKey:@"scope"];
    }
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self accountType])
    {
        [result setValue:[self accountType] forKey:@"accountType"];
    }
    if([self pageIndex])
    {
        [result setValue:[self pageIndex] forKey:@"pageIndex"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self offset])
    {
        [result setValue:[self offset] forKey:@"offset"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pin = [dictionary objectForKey:@"pin"];
    self.appName = [dictionary objectForKey:@"appName"];
    self.clientId = [dictionary objectForKey:@"clientId"];
    self.multiTenant = [dictionary objectForKey:@"multiTenant"];
    self.state = [dictionary objectForKey:@"state"];
    self.scope = [dictionary objectForKey:@"scope"];
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    self.accountType = [dictionary objectForKey:@"accountType"];
    self.pageIndex = [dictionary objectForKey:@"pageIndex"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.offset = [dictionary objectForKey:@"offset"];
    return self;
} 

@end
@implementation IasAppDetailResult
-(id) initWithClientId:(NSString*) clientId
        clientName:(NSString*)clientName
        tokenEndpointAuthMethod:(NSString*)tokenEndpointAuthMethod
        grantTypes:(NSString*)grantTypes
        responseTypes:(NSString*)responseTypes
        redirectUris:(NSString*)redirectUris
        clientUri:(NSString*)clientUri
        logoUri:(NSString*)logoUri
        tosUri:(NSString*)tosUri
        policyUri:(NSString*)policyUri
        scope:(NSString*)scope
        jwksUri:(NSString*)jwksUri
        jwks:(NSString*)jwks
        contacts:(NSString*)contacts
        extension:(NSString*)extension
        accessTokenValiditySeconds:(NSNumber*)accessTokenValiditySeconds
        refreshTokenValiditySeconds:(NSNumber*)refreshTokenValiditySeconds
        multiTenant:(NSNumber*)multiTenant
        secretUpdateTime:(NSNumber*)secretUpdateTime
        updateTime:(NSNumber*)updateTime
        createTime:(NSNumber*)createTime
        account:(NSString*)account
        userType:(NSString*)userType
        state:(NSString*)state { 
    self.clientId = clientId;               
    self.clientName = clientName;               
    self.tokenEndpointAuthMethod = tokenEndpointAuthMethod;               
    self.grantTypes = grantTypes;               
    self.responseTypes = responseTypes;               
    self.redirectUris = redirectUris;               
    self.clientUri = clientUri;               
    self.logoUri = logoUri;               
    self.tosUri = tosUri;               
    self.policyUri = policyUri;               
    self.scope = scope;               
    self.jwksUri = jwksUri;               
    self.jwks = jwks;               
    self.contacts = contacts;               
    self.extension = extension;               
    self.accessTokenValiditySeconds = accessTokenValiditySeconds;               
    self.refreshTokenValiditySeconds = refreshTokenValiditySeconds;               
    self.multiTenant = multiTenant;               
    self.secretUpdateTime = secretUpdateTime;               
    self.updateTime = updateTime;               
    self.createTime = createTime;               
    self.account = account;               
    self.userType = userType;               
    self.state = state;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    if([self clientName])
    {
        [result setValue:[self clientName] forKey:@"clientName"];
    }
    if([self tokenEndpointAuthMethod])
    {
        [result setValue:[self tokenEndpointAuthMethod] forKey:@"tokenEndpointAuthMethod"];
    }
    if([self grantTypes])
    {
        [result setValue:[self grantTypes] forKey:@"grantTypes"];
    }
    if([self responseTypes])
    {
        [result setValue:[self responseTypes] forKey:@"responseTypes"];
    }
    if([self redirectUris])
    {
        [result setValue:[self redirectUris] forKey:@"redirectUris"];
    }
    if([self clientUri])
    {
        [result setValue:[self clientUri] forKey:@"clientUri"];
    }
    if([self logoUri])
    {
        [result setValue:[self logoUri] forKey:@"logoUri"];
    }
    if([self tosUri])
    {
        [result setValue:[self tosUri] forKey:@"tosUri"];
    }
    if([self policyUri])
    {
        [result setValue:[self policyUri] forKey:@"policyUri"];
    }
    if([self scope])
    {
        [result setValue:[self scope] forKey:@"scope"];
    }
    if([self jwksUri])
    {
        [result setValue:[self jwksUri] forKey:@"jwksUri"];
    }
    if([self jwks])
    {
        [result setValue:[self jwks] forKey:@"jwks"];
    }
    if([self contacts])
    {
        [result setValue:[self contacts] forKey:@"contacts"];
    }
    if([self extension])
    {
        [result setValue:[self extension] forKey:@"extension"];
    }
    if([self accessTokenValiditySeconds])
    {
        [result setValue:[self accessTokenValiditySeconds] forKey:@"accessTokenValiditySeconds"];
    }
    if([self refreshTokenValiditySeconds])
    {
        [result setValue:[self refreshTokenValiditySeconds] forKey:@"refreshTokenValiditySeconds"];
    }
    if([self multiTenant])
    {
        [result setValue:[self multiTenant] forKey:@"multiTenant"];
    }
    if([self secretUpdateTime])
    {
        [result setValue:[self secretUpdateTime] forKey:@"secretUpdateTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self account])
    {
        [result setValue:[self account] forKey:@"account"];
    }
    if([self userType])
    {
        [result setValue:[self userType] forKey:@"userType"];
    }
    if([self state])
    {
        [result setValue:[self state] forKey:@"state"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientId = [dictionary objectForKey:@"clientId"];
    self.clientName = [dictionary objectForKey:@"clientName"];
    self.tokenEndpointAuthMethod = [dictionary objectForKey:@"tokenEndpointAuthMethod"];
    self.grantTypes = [dictionary objectForKey:@"grantTypes"];
    self.responseTypes = [dictionary objectForKey:@"responseTypes"];
    self.redirectUris = [dictionary objectForKey:@"redirectUris"];
    self.clientUri = [dictionary objectForKey:@"clientUri"];
    self.logoUri = [dictionary objectForKey:@"logoUri"];
    self.tosUri = [dictionary objectForKey:@"tosUri"];
    self.policyUri = [dictionary objectForKey:@"policyUri"];
    self.scope = [dictionary objectForKey:@"scope"];
    self.jwksUri = [dictionary objectForKey:@"jwksUri"];
    self.jwks = [dictionary objectForKey:@"jwks"];
    self.contacts = [dictionary objectForKey:@"contacts"];
    self.extension = [dictionary objectForKey:@"extension"];
    self.accessTokenValiditySeconds = [dictionary objectForKey:@"accessTokenValiditySeconds"];
    self.refreshTokenValiditySeconds = [dictionary objectForKey:@"refreshTokenValiditySeconds"];
    self.multiTenant = [dictionary objectForKey:@"multiTenant"];
    self.secretUpdateTime = [dictionary objectForKey:@"secretUpdateTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.account = [dictionary objectForKey:@"account"];
    self.userType = [dictionary objectForKey:@"userType"];
    self.state = [dictionary objectForKey:@"state"];
    return self;
} 

@end
@implementation IasAppDetailRequest
-(id) initWithRegion:(NSString *)regionId
clientId:(NSString*)clientId { 
    self.regionId = regionId;
    self.clientId = clientId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientId:(NSString*)clientId { 
    self.regionId = regionId;
    self.version = version;
    self.clientId = clientId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientId = [dictionary objectForKey:@"clientId"];
    return self;
} 

@end
@implementation IasCreateAppRequest
-(id) initWithRegion:(NSString *)regionId
clientName:(NSString*)clientName
tokenEndpointAuthMethod:(NSString*)tokenEndpointAuthMethod
grantTypes:(NSString*)grantTypes
redirectUris:(NSString*)redirectUris
clientUri:(NSString*)clientUri
logoUri:(NSString*)logoUri
tosUri:(NSString*)tosUri
policyUri:(NSString*)policyUri
scope:(NSString*)scope
jwksUri:(NSString*)jwksUri
jwks:(NSString*)jwks
contacts:(NSString*)contacts
extension:(NSString*)extension
accessTokenValiditySeconds:(NSNumber*)accessTokenValiditySeconds
refreshTokenValiditySeconds:(NSNumber*)refreshTokenValiditySeconds
multiTenant:(NSNumber*)multiTenant
secret:(NSString*)secret
userType:(NSString*)userType { 
    self.regionId = regionId;
    self.clientName = clientName;
    self.tokenEndpointAuthMethod = tokenEndpointAuthMethod;
    self.grantTypes = grantTypes;
    self.redirectUris = redirectUris;
    self.clientUri = clientUri;
    self.logoUri = logoUri;
    self.tosUri = tosUri;
    self.policyUri = policyUri;
    self.scope = scope;
    self.jwksUri = jwksUri;
    self.jwks = jwks;
    self.contacts = contacts;
    self.extension = extension;
    self.accessTokenValiditySeconds = accessTokenValiditySeconds;
    self.refreshTokenValiditySeconds = refreshTokenValiditySeconds;
    self.multiTenant = multiTenant;
    self.secret = secret;
    self.userType = userType;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientName:(NSString*)clientName
tokenEndpointAuthMethod:(NSString*)tokenEndpointAuthMethod
grantTypes:(NSString*)grantTypes
redirectUris:(NSString*)redirectUris
clientUri:(NSString*)clientUri
logoUri:(NSString*)logoUri
tosUri:(NSString*)tosUri
policyUri:(NSString*)policyUri
scope:(NSString*)scope
jwksUri:(NSString*)jwksUri
jwks:(NSString*)jwks
contacts:(NSString*)contacts
extension:(NSString*)extension
accessTokenValiditySeconds:(NSNumber*)accessTokenValiditySeconds
refreshTokenValiditySeconds:(NSNumber*)refreshTokenValiditySeconds
multiTenant:(NSNumber*)multiTenant
secret:(NSString*)secret
userType:(NSString*)userType { 
    self.regionId = regionId;
    self.version = version;
    self.clientName = clientName;
    self.tokenEndpointAuthMethod = tokenEndpointAuthMethod;
    self.grantTypes = grantTypes;
    self.redirectUris = redirectUris;
    self.clientUri = clientUri;
    self.logoUri = logoUri;
    self.tosUri = tosUri;
    self.policyUri = policyUri;
    self.scope = scope;
    self.jwksUri = jwksUri;
    self.jwks = jwks;
    self.contacts = contacts;
    self.extension = extension;
    self.accessTokenValiditySeconds = accessTokenValiditySeconds;
    self.refreshTokenValiditySeconds = refreshTokenValiditySeconds;
    self.multiTenant = multiTenant;
    self.secret = secret;
    self.userType = userType;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self clientName])
    {
        [result setValue:[self clientName] forKey:@"clientName"];
    }
    if([self tokenEndpointAuthMethod])
    {
        [result setValue:[self tokenEndpointAuthMethod] forKey:@"tokenEndpointAuthMethod"];
    }
    if([self grantTypes])
    {
        [result setValue:[self grantTypes] forKey:@"grantTypes"];
    }
    if([self redirectUris])
    {
        [result setValue:[self redirectUris] forKey:@"redirectUris"];
    }
    if([self clientUri])
    {
        [result setValue:[self clientUri] forKey:@"clientUri"];
    }
    if([self logoUri])
    {
        [result setValue:[self logoUri] forKey:@"logoUri"];
    }
    if([self tosUri])
    {
        [result setValue:[self tosUri] forKey:@"tosUri"];
    }
    if([self policyUri])
    {
        [result setValue:[self policyUri] forKey:@"policyUri"];
    }
    if([self scope])
    {
        [result setValue:[self scope] forKey:@"scope"];
    }
    if([self jwksUri])
    {
        [result setValue:[self jwksUri] forKey:@"jwksUri"];
    }
    if([self jwks])
    {
        [result setValue:[self jwks] forKey:@"jwks"];
    }
    if([self contacts])
    {
        [result setValue:[self contacts] forKey:@"contacts"];
    }
    if([self extension])
    {
        [result setValue:[self extension] forKey:@"extension"];
    }
    if([self accessTokenValiditySeconds])
    {
        [result setValue:[self accessTokenValiditySeconds] forKey:@"accessTokenValiditySeconds"];
    }
    if([self refreshTokenValiditySeconds])
    {
        [result setValue:[self refreshTokenValiditySeconds] forKey:@"refreshTokenValiditySeconds"];
    }
    if([self multiTenant])
    {
        [result setValue:[self multiTenant] forKey:@"multiTenant"];
    }
    if([self secret])
    {
        [result setValue:[self secret] forKey:@"secret"];
    }
    if([self userType])
    {
        [result setValue:[self userType] forKey:@"userType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientName = [dictionary objectForKey:@"clientName"];
    self.tokenEndpointAuthMethod = [dictionary objectForKey:@"tokenEndpointAuthMethod"];
    self.grantTypes = [dictionary objectForKey:@"grantTypes"];
    self.redirectUris = [dictionary objectForKey:@"redirectUris"];
    self.clientUri = [dictionary objectForKey:@"clientUri"];
    self.logoUri = [dictionary objectForKey:@"logoUri"];
    self.tosUri = [dictionary objectForKey:@"tosUri"];
    self.policyUri = [dictionary objectForKey:@"policyUri"];
    self.scope = [dictionary objectForKey:@"scope"];
    self.jwksUri = [dictionary objectForKey:@"jwksUri"];
    self.jwks = [dictionary objectForKey:@"jwks"];
    self.contacts = [dictionary objectForKey:@"contacts"];
    self.extension = [dictionary objectForKey:@"extension"];
    self.accessTokenValiditySeconds = [dictionary objectForKey:@"accessTokenValiditySeconds"];
    self.refreshTokenValiditySeconds = [dictionary objectForKey:@"refreshTokenValiditySeconds"];
    self.multiTenant = [dictionary objectForKey:@"multiTenant"];
    self.secret = [dictionary objectForKey:@"secret"];
    self.userType = [dictionary objectForKey:@"userType"];
    return self;
} 

@end
@implementation IasUpdateAppRequest
-(id) initWithRegion:(NSString *)regionId
clientName:(NSString*)clientName
tokenEndpointAuthMethod:(NSString*)tokenEndpointAuthMethod
grantTypes:(NSString*)grantTypes
redirectUris:(NSString*)redirectUris
clientUri:(NSString*)clientUri
logoUri:(NSString*)logoUri
tosUri:(NSString*)tosUri
policyUri:(NSString*)policyUri
scope:(NSString*)scope
jwksUri:(NSString*)jwksUri
jwks:(NSString*)jwks
contacts:(NSString*)contacts
extension:(NSString*)extension
accessTokenValiditySeconds:(NSNumber*)accessTokenValiditySeconds
refreshTokenValiditySeconds:(NSNumber*)refreshTokenValiditySeconds
multiTenant:(NSNumber*)multiTenant
secret:(NSString*)secret
userType:(NSString*)userType
clientId:(NSString*)clientId { 
    self.regionId = regionId;
    self.clientName = clientName;
    self.tokenEndpointAuthMethod = tokenEndpointAuthMethod;
    self.grantTypes = grantTypes;
    self.redirectUris = redirectUris;
    self.clientUri = clientUri;
    self.logoUri = logoUri;
    self.tosUri = tosUri;
    self.policyUri = policyUri;
    self.scope = scope;
    self.jwksUri = jwksUri;
    self.jwks = jwks;
    self.contacts = contacts;
    self.extension = extension;
    self.accessTokenValiditySeconds = accessTokenValiditySeconds;
    self.refreshTokenValiditySeconds = refreshTokenValiditySeconds;
    self.multiTenant = multiTenant;
    self.secret = secret;
    self.userType = userType;
    self.clientId = clientId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientName:(NSString*)clientName
tokenEndpointAuthMethod:(NSString*)tokenEndpointAuthMethod
grantTypes:(NSString*)grantTypes
redirectUris:(NSString*)redirectUris
clientUri:(NSString*)clientUri
logoUri:(NSString*)logoUri
tosUri:(NSString*)tosUri
policyUri:(NSString*)policyUri
scope:(NSString*)scope
jwksUri:(NSString*)jwksUri
jwks:(NSString*)jwks
contacts:(NSString*)contacts
extension:(NSString*)extension
accessTokenValiditySeconds:(NSNumber*)accessTokenValiditySeconds
refreshTokenValiditySeconds:(NSNumber*)refreshTokenValiditySeconds
multiTenant:(NSNumber*)multiTenant
secret:(NSString*)secret
userType:(NSString*)userType
clientId:(NSString*)clientId { 
    self.regionId = regionId;
    self.version = version;
    self.clientName = clientName;
    self.tokenEndpointAuthMethod = tokenEndpointAuthMethod;
    self.grantTypes = grantTypes;
    self.redirectUris = redirectUris;
    self.clientUri = clientUri;
    self.logoUri = logoUri;
    self.tosUri = tosUri;
    self.policyUri = policyUri;
    self.scope = scope;
    self.jwksUri = jwksUri;
    self.jwks = jwks;
    self.contacts = contacts;
    self.extension = extension;
    self.accessTokenValiditySeconds = accessTokenValiditySeconds;
    self.refreshTokenValiditySeconds = refreshTokenValiditySeconds;
    self.multiTenant = multiTenant;
    self.secret = secret;
    self.userType = userType;
    self.clientId = clientId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self clientName])
    {
        [result setValue:[self clientName] forKey:@"clientName"];
    }
    if([self tokenEndpointAuthMethod])
    {
        [result setValue:[self tokenEndpointAuthMethod] forKey:@"tokenEndpointAuthMethod"];
    }
    if([self grantTypes])
    {
        [result setValue:[self grantTypes] forKey:@"grantTypes"];
    }
    if([self redirectUris])
    {
        [result setValue:[self redirectUris] forKey:@"redirectUris"];
    }
    if([self clientUri])
    {
        [result setValue:[self clientUri] forKey:@"clientUri"];
    }
    if([self logoUri])
    {
        [result setValue:[self logoUri] forKey:@"logoUri"];
    }
    if([self tosUri])
    {
        [result setValue:[self tosUri] forKey:@"tosUri"];
    }
    if([self policyUri])
    {
        [result setValue:[self policyUri] forKey:@"policyUri"];
    }
    if([self scope])
    {
        [result setValue:[self scope] forKey:@"scope"];
    }
    if([self jwksUri])
    {
        [result setValue:[self jwksUri] forKey:@"jwksUri"];
    }
    if([self jwks])
    {
        [result setValue:[self jwks] forKey:@"jwks"];
    }
    if([self contacts])
    {
        [result setValue:[self contacts] forKey:@"contacts"];
    }
    if([self extension])
    {
        [result setValue:[self extension] forKey:@"extension"];
    }
    if([self accessTokenValiditySeconds])
    {
        [result setValue:[self accessTokenValiditySeconds] forKey:@"accessTokenValiditySeconds"];
    }
    if([self refreshTokenValiditySeconds])
    {
        [result setValue:[self refreshTokenValiditySeconds] forKey:@"refreshTokenValiditySeconds"];
    }
    if([self multiTenant])
    {
        [result setValue:[self multiTenant] forKey:@"multiTenant"];
    }
    if([self secret])
    {
        [result setValue:[self secret] forKey:@"secret"];
    }
    if([self userType])
    {
        [result setValue:[self userType] forKey:@"userType"];
    }
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientName = [dictionary objectForKey:@"clientName"];
    self.tokenEndpointAuthMethod = [dictionary objectForKey:@"tokenEndpointAuthMethod"];
    self.grantTypes = [dictionary objectForKey:@"grantTypes"];
    self.redirectUris = [dictionary objectForKey:@"redirectUris"];
    self.clientUri = [dictionary objectForKey:@"clientUri"];
    self.logoUri = [dictionary objectForKey:@"logoUri"];
    self.tosUri = [dictionary objectForKey:@"tosUri"];
    self.policyUri = [dictionary objectForKey:@"policyUri"];
    self.scope = [dictionary objectForKey:@"scope"];
    self.jwksUri = [dictionary objectForKey:@"jwksUri"];
    self.jwks = [dictionary objectForKey:@"jwks"];
    self.contacts = [dictionary objectForKey:@"contacts"];
    self.extension = [dictionary objectForKey:@"extension"];
    self.accessTokenValiditySeconds = [dictionary objectForKey:@"accessTokenValiditySeconds"];
    self.refreshTokenValiditySeconds = [dictionary objectForKey:@"refreshTokenValiditySeconds"];
    self.multiTenant = [dictionary objectForKey:@"multiTenant"];
    self.secret = [dictionary objectForKey:@"secret"];
    self.userType = [dictionary objectForKey:@"userType"];
    self.clientId = [dictionary objectForKey:@"clientId"];
    return self;
} 

@end
@implementation IasUpdateAppResult
-(id) initWithClientId:(NSString*) clientId
        clientName:(NSString*)clientName
        tokenEndpointAuthMethod:(NSString*)tokenEndpointAuthMethod
        grantTypes:(NSString*)grantTypes
        responseTypes:(NSString*)responseTypes
        redirectUris:(NSString*)redirectUris
        clientUri:(NSString*)clientUri
        logoUri:(NSString*)logoUri
        tosUri:(NSString*)tosUri
        policyUri:(NSString*)policyUri
        scope:(NSString*)scope
        jwksUri:(NSString*)jwksUri
        jwks:(NSString*)jwks
        contacts:(NSString*)contacts
        extension:(NSString*)extension
        accessTokenValiditySeconds:(NSNumber*)accessTokenValiditySeconds
        refreshTokenValiditySeconds:(NSNumber*)refreshTokenValiditySeconds
        multiTenant:(NSNumber*)multiTenant
        secretUpdateTime:(NSNumber*)secretUpdateTime
        updateTime:(NSNumber*)updateTime
        createTime:(NSNumber*)createTime
        account:(NSString*)account
        userType:(NSString*)userType { 
    self.clientId = clientId;               
    self.clientName = clientName;               
    self.tokenEndpointAuthMethod = tokenEndpointAuthMethod;               
    self.grantTypes = grantTypes;               
    self.responseTypes = responseTypes;               
    self.redirectUris = redirectUris;               
    self.clientUri = clientUri;               
    self.logoUri = logoUri;               
    self.tosUri = tosUri;               
    self.policyUri = policyUri;               
    self.scope = scope;               
    self.jwksUri = jwksUri;               
    self.jwks = jwks;               
    self.contacts = contacts;               
    self.extension = extension;               
    self.accessTokenValiditySeconds = accessTokenValiditySeconds;               
    self.refreshTokenValiditySeconds = refreshTokenValiditySeconds;               
    self.multiTenant = multiTenant;               
    self.secretUpdateTime = secretUpdateTime;               
    self.updateTime = updateTime;               
    self.createTime = createTime;               
    self.account = account;               
    self.userType = userType;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    if([self clientName])
    {
        [result setValue:[self clientName] forKey:@"clientName"];
    }
    if([self tokenEndpointAuthMethod])
    {
        [result setValue:[self tokenEndpointAuthMethod] forKey:@"tokenEndpointAuthMethod"];
    }
    if([self grantTypes])
    {
        [result setValue:[self grantTypes] forKey:@"grantTypes"];
    }
    if([self responseTypes])
    {
        [result setValue:[self responseTypes] forKey:@"responseTypes"];
    }
    if([self redirectUris])
    {
        [result setValue:[self redirectUris] forKey:@"redirectUris"];
    }
    if([self clientUri])
    {
        [result setValue:[self clientUri] forKey:@"clientUri"];
    }
    if([self logoUri])
    {
        [result setValue:[self logoUri] forKey:@"logoUri"];
    }
    if([self tosUri])
    {
        [result setValue:[self tosUri] forKey:@"tosUri"];
    }
    if([self policyUri])
    {
        [result setValue:[self policyUri] forKey:@"policyUri"];
    }
    if([self scope])
    {
        [result setValue:[self scope] forKey:@"scope"];
    }
    if([self jwksUri])
    {
        [result setValue:[self jwksUri] forKey:@"jwksUri"];
    }
    if([self jwks])
    {
        [result setValue:[self jwks] forKey:@"jwks"];
    }
    if([self contacts])
    {
        [result setValue:[self contacts] forKey:@"contacts"];
    }
    if([self extension])
    {
        [result setValue:[self extension] forKey:@"extension"];
    }
    if([self accessTokenValiditySeconds])
    {
        [result setValue:[self accessTokenValiditySeconds] forKey:@"accessTokenValiditySeconds"];
    }
    if([self refreshTokenValiditySeconds])
    {
        [result setValue:[self refreshTokenValiditySeconds] forKey:@"refreshTokenValiditySeconds"];
    }
    if([self multiTenant])
    {
        [result setValue:[self multiTenant] forKey:@"multiTenant"];
    }
    if([self secretUpdateTime])
    {
        [result setValue:[self secretUpdateTime] forKey:@"secretUpdateTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self account])
    {
        [result setValue:[self account] forKey:@"account"];
    }
    if([self userType])
    {
        [result setValue:[self userType] forKey:@"userType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientId = [dictionary objectForKey:@"clientId"];
    self.clientName = [dictionary objectForKey:@"clientName"];
    self.tokenEndpointAuthMethod = [dictionary objectForKey:@"tokenEndpointAuthMethod"];
    self.grantTypes = [dictionary objectForKey:@"grantTypes"];
    self.responseTypes = [dictionary objectForKey:@"responseTypes"];
    self.redirectUris = [dictionary objectForKey:@"redirectUris"];
    self.clientUri = [dictionary objectForKey:@"clientUri"];
    self.logoUri = [dictionary objectForKey:@"logoUri"];
    self.tosUri = [dictionary objectForKey:@"tosUri"];
    self.policyUri = [dictionary objectForKey:@"policyUri"];
    self.scope = [dictionary objectForKey:@"scope"];
    self.jwksUri = [dictionary objectForKey:@"jwksUri"];
    self.jwks = [dictionary objectForKey:@"jwks"];
    self.contacts = [dictionary objectForKey:@"contacts"];
    self.extension = [dictionary objectForKey:@"extension"];
    self.accessTokenValiditySeconds = [dictionary objectForKey:@"accessTokenValiditySeconds"];
    self.refreshTokenValiditySeconds = [dictionary objectForKey:@"refreshTokenValiditySeconds"];
    self.multiTenant = [dictionary objectForKey:@"multiTenant"];
    self.secretUpdateTime = [dictionary objectForKey:@"secretUpdateTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.account = [dictionary objectForKey:@"account"];
    self.userType = [dictionary objectForKey:@"userType"];
    return self;
} 

@end
@implementation IasDeleteAppRequest
-(id) initWithRegion:(NSString *)regionId
clientId:(NSString*)clientId { 
    self.regionId = regionId;
    self.clientId = clientId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientId:(NSString*)clientId { 
    self.regionId = regionId;
    self.version = version;
    self.clientId = clientId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientId = [dictionary objectForKey:@"clientId"];
    return self;
} 

@end
@implementation IasDeleteAppResult
-(id) initWithCount:(NSNumber*) count { 
    self.count = count;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self count])
    {
        [result setValue:[self count] forKey:@"count"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.count = [dictionary objectForKey:@"count"];
    return self;
} 

@end
@implementation IasGetAppResult
-(id) initWithClientId:(NSString*) clientId
        clientName:(NSString*)clientName
        tokenEndpointAuthMethod:(NSString*)tokenEndpointAuthMethod
        grantTypes:(NSString*)grantTypes
        responseTypes:(NSString*)responseTypes
        redirectUris:(NSString*)redirectUris
        clientUri:(NSString*)clientUri
        logoUri:(NSString*)logoUri
        tosUri:(NSString*)tosUri
        policyUri:(NSString*)policyUri
        scope:(NSString*)scope
        jwksUri:(NSString*)jwksUri
        jwks:(NSString*)jwks
        contacts:(NSString*)contacts
        extension:(NSString*)extension
        accessTokenValiditySeconds:(NSNumber*)accessTokenValiditySeconds
        refreshTokenValiditySeconds:(NSNumber*)refreshTokenValiditySeconds
        multiTenant:(NSNumber*)multiTenant
        secretUpdateTime:(NSNumber*)secretUpdateTime
        updateTime:(NSNumber*)updateTime
        createTime:(NSNumber*)createTime
        account:(NSString*)account
        userType:(NSString*)userType { 
    self.clientId = clientId;               
    self.clientName = clientName;               
    self.tokenEndpointAuthMethod = tokenEndpointAuthMethod;               
    self.grantTypes = grantTypes;               
    self.responseTypes = responseTypes;               
    self.redirectUris = redirectUris;               
    self.clientUri = clientUri;               
    self.logoUri = logoUri;               
    self.tosUri = tosUri;               
    self.policyUri = policyUri;               
    self.scope = scope;               
    self.jwksUri = jwksUri;               
    self.jwks = jwks;               
    self.contacts = contacts;               
    self.extension = extension;               
    self.accessTokenValiditySeconds = accessTokenValiditySeconds;               
    self.refreshTokenValiditySeconds = refreshTokenValiditySeconds;               
    self.multiTenant = multiTenant;               
    self.secretUpdateTime = secretUpdateTime;               
    self.updateTime = updateTime;               
    self.createTime = createTime;               
    self.account = account;               
    self.userType = userType;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    if([self clientName])
    {
        [result setValue:[self clientName] forKey:@"clientName"];
    }
    if([self tokenEndpointAuthMethod])
    {
        [result setValue:[self tokenEndpointAuthMethod] forKey:@"tokenEndpointAuthMethod"];
    }
    if([self grantTypes])
    {
        [result setValue:[self grantTypes] forKey:@"grantTypes"];
    }
    if([self responseTypes])
    {
        [result setValue:[self responseTypes] forKey:@"responseTypes"];
    }
    if([self redirectUris])
    {
        [result setValue:[self redirectUris] forKey:@"redirectUris"];
    }
    if([self clientUri])
    {
        [result setValue:[self clientUri] forKey:@"clientUri"];
    }
    if([self logoUri])
    {
        [result setValue:[self logoUri] forKey:@"logoUri"];
    }
    if([self tosUri])
    {
        [result setValue:[self tosUri] forKey:@"tosUri"];
    }
    if([self policyUri])
    {
        [result setValue:[self policyUri] forKey:@"policyUri"];
    }
    if([self scope])
    {
        [result setValue:[self scope] forKey:@"scope"];
    }
    if([self jwksUri])
    {
        [result setValue:[self jwksUri] forKey:@"jwksUri"];
    }
    if([self jwks])
    {
        [result setValue:[self jwks] forKey:@"jwks"];
    }
    if([self contacts])
    {
        [result setValue:[self contacts] forKey:@"contacts"];
    }
    if([self extension])
    {
        [result setValue:[self extension] forKey:@"extension"];
    }
    if([self accessTokenValiditySeconds])
    {
        [result setValue:[self accessTokenValiditySeconds] forKey:@"accessTokenValiditySeconds"];
    }
    if([self refreshTokenValiditySeconds])
    {
        [result setValue:[self refreshTokenValiditySeconds] forKey:@"refreshTokenValiditySeconds"];
    }
    if([self multiTenant])
    {
        [result setValue:[self multiTenant] forKey:@"multiTenant"];
    }
    if([self secretUpdateTime])
    {
        [result setValue:[self secretUpdateTime] forKey:@"secretUpdateTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self account])
    {
        [result setValue:[self account] forKey:@"account"];
    }
    if([self userType])
    {
        [result setValue:[self userType] forKey:@"userType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientId = [dictionary objectForKey:@"clientId"];
    self.clientName = [dictionary objectForKey:@"clientName"];
    self.tokenEndpointAuthMethod = [dictionary objectForKey:@"tokenEndpointAuthMethod"];
    self.grantTypes = [dictionary objectForKey:@"grantTypes"];
    self.responseTypes = [dictionary objectForKey:@"responseTypes"];
    self.redirectUris = [dictionary objectForKey:@"redirectUris"];
    self.clientUri = [dictionary objectForKey:@"clientUri"];
    self.logoUri = [dictionary objectForKey:@"logoUri"];
    self.tosUri = [dictionary objectForKey:@"tosUri"];
    self.policyUri = [dictionary objectForKey:@"policyUri"];
    self.scope = [dictionary objectForKey:@"scope"];
    self.jwksUri = [dictionary objectForKey:@"jwksUri"];
    self.jwks = [dictionary objectForKey:@"jwks"];
    self.contacts = [dictionary objectForKey:@"contacts"];
    self.extension = [dictionary objectForKey:@"extension"];
    self.accessTokenValiditySeconds = [dictionary objectForKey:@"accessTokenValiditySeconds"];
    self.refreshTokenValiditySeconds = [dictionary objectForKey:@"refreshTokenValiditySeconds"];
    self.multiTenant = [dictionary objectForKey:@"multiTenant"];
    self.secretUpdateTime = [dictionary objectForKey:@"secretUpdateTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.account = [dictionary objectForKey:@"account"];
    self.userType = [dictionary objectForKey:@"userType"];
    return self;
} 

@end
@implementation IasCreateAppResult
-(id) initWithClientId:(NSString*) clientId
        clientName:(NSString*)clientName
        tokenEndpointAuthMethod:(NSString*)tokenEndpointAuthMethod
        grantTypes:(NSString*)grantTypes
        responseTypes:(NSString*)responseTypes
        redirectUris:(NSString*)redirectUris
        clientUri:(NSString*)clientUri
        logoUri:(NSString*)logoUri
        tosUri:(NSString*)tosUri
        policyUri:(NSString*)policyUri
        scope:(NSString*)scope
        jwksUri:(NSString*)jwksUri
        jwks:(NSString*)jwks
        contacts:(NSString*)contacts
        extension:(NSString*)extension
        accessTokenValiditySeconds:(NSNumber*)accessTokenValiditySeconds
        refreshTokenValiditySeconds:(NSNumber*)refreshTokenValiditySeconds
        multiTenant:(NSNumber*)multiTenant
        secretUpdateTime:(NSNumber*)secretUpdateTime
        updateTime:(NSNumber*)updateTime
        createTime:(NSNumber*)createTime
        account:(NSString*)account
        userType:(NSString*)userType { 
    self.clientId = clientId;               
    self.clientName = clientName;               
    self.tokenEndpointAuthMethod = tokenEndpointAuthMethod;               
    self.grantTypes = grantTypes;               
    self.responseTypes = responseTypes;               
    self.redirectUris = redirectUris;               
    self.clientUri = clientUri;               
    self.logoUri = logoUri;               
    self.tosUri = tosUri;               
    self.policyUri = policyUri;               
    self.scope = scope;               
    self.jwksUri = jwksUri;               
    self.jwks = jwks;               
    self.contacts = contacts;               
    self.extension = extension;               
    self.accessTokenValiditySeconds = accessTokenValiditySeconds;               
    self.refreshTokenValiditySeconds = refreshTokenValiditySeconds;               
    self.multiTenant = multiTenant;               
    self.secretUpdateTime = secretUpdateTime;               
    self.updateTime = updateTime;               
    self.createTime = createTime;               
    self.account = account;               
    self.userType = userType;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    if([self clientName])
    {
        [result setValue:[self clientName] forKey:@"clientName"];
    }
    if([self tokenEndpointAuthMethod])
    {
        [result setValue:[self tokenEndpointAuthMethod] forKey:@"tokenEndpointAuthMethod"];
    }
    if([self grantTypes])
    {
        [result setValue:[self grantTypes] forKey:@"grantTypes"];
    }
    if([self responseTypes])
    {
        [result setValue:[self responseTypes] forKey:@"responseTypes"];
    }
    if([self redirectUris])
    {
        [result setValue:[self redirectUris] forKey:@"redirectUris"];
    }
    if([self clientUri])
    {
        [result setValue:[self clientUri] forKey:@"clientUri"];
    }
    if([self logoUri])
    {
        [result setValue:[self logoUri] forKey:@"logoUri"];
    }
    if([self tosUri])
    {
        [result setValue:[self tosUri] forKey:@"tosUri"];
    }
    if([self policyUri])
    {
        [result setValue:[self policyUri] forKey:@"policyUri"];
    }
    if([self scope])
    {
        [result setValue:[self scope] forKey:@"scope"];
    }
    if([self jwksUri])
    {
        [result setValue:[self jwksUri] forKey:@"jwksUri"];
    }
    if([self jwks])
    {
        [result setValue:[self jwks] forKey:@"jwks"];
    }
    if([self contacts])
    {
        [result setValue:[self contacts] forKey:@"contacts"];
    }
    if([self extension])
    {
        [result setValue:[self extension] forKey:@"extension"];
    }
    if([self accessTokenValiditySeconds])
    {
        [result setValue:[self accessTokenValiditySeconds] forKey:@"accessTokenValiditySeconds"];
    }
    if([self refreshTokenValiditySeconds])
    {
        [result setValue:[self refreshTokenValiditySeconds] forKey:@"refreshTokenValiditySeconds"];
    }
    if([self multiTenant])
    {
        [result setValue:[self multiTenant] forKey:@"multiTenant"];
    }
    if([self secretUpdateTime])
    {
        [result setValue:[self secretUpdateTime] forKey:@"secretUpdateTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self account])
    {
        [result setValue:[self account] forKey:@"account"];
    }
    if([self userType])
    {
        [result setValue:[self userType] forKey:@"userType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientId = [dictionary objectForKey:@"clientId"];
    self.clientName = [dictionary objectForKey:@"clientName"];
    self.tokenEndpointAuthMethod = [dictionary objectForKey:@"tokenEndpointAuthMethod"];
    self.grantTypes = [dictionary objectForKey:@"grantTypes"];
    self.responseTypes = [dictionary objectForKey:@"responseTypes"];
    self.redirectUris = [dictionary objectForKey:@"redirectUris"];
    self.clientUri = [dictionary objectForKey:@"clientUri"];
    self.logoUri = [dictionary objectForKey:@"logoUri"];
    self.tosUri = [dictionary objectForKey:@"tosUri"];
    self.policyUri = [dictionary objectForKey:@"policyUri"];
    self.scope = [dictionary objectForKey:@"scope"];
    self.jwksUri = [dictionary objectForKey:@"jwksUri"];
    self.jwks = [dictionary objectForKey:@"jwks"];
    self.contacts = [dictionary objectForKey:@"contacts"];
    self.extension = [dictionary objectForKey:@"extension"];
    self.accessTokenValiditySeconds = [dictionary objectForKey:@"accessTokenValiditySeconds"];
    self.refreshTokenValiditySeconds = [dictionary objectForKey:@"refreshTokenValiditySeconds"];
    self.multiTenant = [dictionary objectForKey:@"multiTenant"];
    self.secretUpdateTime = [dictionary objectForKey:@"secretUpdateTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.account = [dictionary objectForKey:@"account"];
    self.userType = [dictionary objectForKey:@"userType"];
    return self;
} 

@end
@implementation IasGetAppRequest
-(id) initWithRegion:(NSString *)regionId
clientId:(NSString*)clientId { 
    self.regionId = regionId;
    self.clientId = clientId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
clientId:(NSString*)clientId { 
    self.regionId = regionId;
    self.version = version;
    self.clientId = clientId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self clientId])
    {
        [result setValue:[self clientId] forKey:@"clientId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.clientId = [dictionary objectForKey:@"clientId"];
    return self;
} 

@end
@implementation IasAppsResult
-(id) initWithPagination:(Pagination*) pagination
        result:(NSArray<AppQueryResultItem*>*)result { 
    self.pagination = pagination;               
    self.result = result;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pagination])
    {
        [result setValue:[[self pagination] dictionary]forKey:@"pagination"];
    }
    if([self result])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self result] count]; i++) {
            AppQueryResultItem* item = [[self result] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"result"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pagination = [[Pagination alloc]initWithDic:[dictionary objectForKey:@"pagination"]];
    NSArray* resultArray = [dictionary objectForKey:@"result"];
    if(resultArray&&![resultArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [resultArray count];i++)
        {
        AppQueryResultItem* item = [[AppQueryResultItem alloc]initWithDic:[resultArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.result = propertyArray;
    }
    return self;
} 

@end
  
@implementation IasAppsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
IasAppsResult* result = [[IasAppsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(IasAppsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation IasStateRequest
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
@implementation IasStateResult
-(id) initWithStates:(NSArray<State*>*) states { 
    self.states = states;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self states])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self states] count]; i++) {
            State* item = [[self states] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"states"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* statesArray = [dictionary objectForKey:@"states"];
    if(statesArray&&![statesArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [statesArray count];i++)
        {
        State* item = [[State alloc]initWithDic:[statesArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.states = propertyArray;
    }
    return self;
} 

@end
  
@implementation IasStateResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
IasStateResult* result = [[IasStateResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(IasStateResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation IasAppDetailResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
IasAppDetailResult* result = [[IasAppDetailResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(IasAppDetailResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation IasCreateAppResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
IasCreateAppResult* result = [[IasCreateAppResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(IasCreateAppResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation IasUpdateAppResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
IasUpdateAppResult* result = [[IasUpdateAppResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(IasUpdateAppResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation IasDeleteAppResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
IasDeleteAppResult* result = [[IasDeleteAppResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(IasDeleteAppResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation IasGetAppsResult
-(id) initWithApps:(NSArray<ApplicationRes*>*) apps { 
    self.apps = apps;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apps])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self apps] count]; i++) {
            ApplicationRes* item = [[self apps] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"apps"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* appsArray = [dictionary objectForKey:@"apps"];
    if(appsArray&&![appsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [appsArray count];i++)
        {
        ApplicationRes* item = [[ApplicationRes alloc]initWithDic:[appsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.apps = propertyArray;
    }
    return self;
} 

@end
  
@implementation IasGetAppResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
IasGetAppResult* result = [[IasGetAppResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(IasGetAppResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation IasGetAppsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
IasGetAppsResult* result = [[IasGetAppsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(IasGetAppsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation IasGetAppsRequest
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
 
